package com.xiaocheng.core.proxy;

import java.lang.reflect.InvocationHandler;
import java.lang.reflect.Method;
/**
 * 
* @ClassName: MyProxy 
* @Description: 代理类
* @author 高亚鹏
* @date 2018年5月12日 上午12:05:47 
* 
* @param <T>
 */
public class MyProxy<T> implements InvocationHandler {
	T t;
	public MyProxy(T t) {
		this.t = t;
	}
	@Override
	public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {
		before();
		method.invoke(t, args);
		after();
		return null;
	}
	public void before(){
		System.out.println("before");
	}
	public void after(){
		System.out.println("after");
	}

}
